#version 330 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec3 aNormal;
layout (location = 2) in vec2 aTexcoord;

layout (std140,binding = 0) uniform Matrices
{   
    mat4 projection;
    mat4 view;  
} transform;

uniform mat4 model;

out vs_out
{
    vec4 pos;
    vec3 ourColor;
    vec2 Texcoord;
} v;

void main()
{
    gl_Position =transform.projection * transform.view * model *vec4(aPos, 1.0);
    v.pos = gl_Position;
    v.Texcoord = aTexcoord;
    v.ourColor = gl_Position.xyz;
}